#define DEBUG(x)
#endif
-#define GTK_FILE_SYSTEM_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), GTK_TYPE_FILE_SYSTEM, GtkFileSystemPrivate))
-#define GTK_FOLDER_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), GTK_TYPE_FOLDER, GtkFolderPrivate))
#define FILES_PER_QUERY 100
/* The pointers we return for a GtkFileSystemVolume are opaque tokens; they are
static guint fs_signals [FS_LAST_SIGNAL] = { 0, };
static guint folder_signals [FOLDER_LAST_SIGNAL] = { 0, };
-typedef struct GtkFileSystemPrivate GtkFileSystemPrivate;
-typedef struct GtkFolderPrivate GtkFolderPrivate;
typedef struct AsyncFuncData AsyncFuncData;
-struct GtkFileSystemPrivate
+struct GtkFileSystemPriv
{
GVolumeMonitor *volume_monitor;
GFileMonitor *bookmarks_monitor;
};
-struct GtkFolderPrivate
+struct GtkFolderPriv
{
GFile *folder_file;
GHashTable *children;
static void
gtk_file_system_dispose (GObject *object)
{
- GtkFileSystemPrivate *priv;
+ GtkFileSystem *file_system = GTK_FILE_SYSTEM (object);
+ GtkFileSystemPriv *priv = file_system->priv;
DEBUG ("dispose");
- priv = GTK_FILE_SYSTEM_GET_PRIVATE (object);
-
if (priv->volumes)
{
g_slist_foreach (priv->volumes, (GFunc) g_object_unref, NULL);
static void
gtk_file_system_finalize (GObject *object)
{
- GtkFileSystemPrivate *priv;
+ GtkFileSystem *file_system = GTK_FILE_SYSTEM (object);
+ GtkFileSystemPriv *priv = file_system->priv;
DEBUG ("finalize");
- priv = GTK_FILE_SYSTEM_GET_PRIVATE (object);
-
if (priv->bookmarks_monitor)
g_object_unref (priv->bookmarks_monitor);
g_cclosure_marshal_VOID__VOID,
G_TYPE_NONE, 0);
- g_type_class_add_private (object_class, sizeof (GtkFileSystemPrivate));
+ g_type_class_add_private (object_class, sizeof (GtkFileSystemPriv));
}
static GFile *
GFileMonitorEvent event,
gpointer data)
{
- GtkFileSystemPrivate *priv;
-
- priv = GTK_FILE_SYSTEM_GET_PRIVATE (data);
+ GtkFileSystem *file_system = GTK_FILE_SYSTEM (data);
+ GtkFileSystemPriv *priv = file_system->priv;
switch (event)
{
static void
get_volumes_list (GtkFileSystem *file_system)
{
- GtkFileSystemPrivate *priv;
+ GtkFileSystemPriv *priv = file_system->priv;
GList *l, *ll;
GList *drives;
GList *volumes;
GVolume *volume;
GMount *mount;
- priv = GTK_FILE_SYSTEM_GET_PRIVATE (file_system);
-
if (priv->volumes)
{
g_slist_foreach (priv->volumes, (GFunc) g_object_unref, NULL);
static void
_gtk_file_system_init (GtkFileSystem *file_system)
{
- GtkFileSystemPrivate *priv;
+ GtkFileSystemPriv *priv;
GFile *bookmarks_file;
GError *error = NULL;
DEBUG ("init");
- priv = GTK_FILE_SYSTEM_GET_PRIVATE (file_system);
+ file_system->priv = G_TYPE_INSTANCE_GET_PRIVATE (file_system,
+ GTK_TYPE_FILE_SYSTEM,
+ GtkFileSystemPriv);
+ priv = file_system->priv;
/* Volumes */
priv->volume_monitor = g_volume_monitor_get ();
GSList *
_gtk_file_system_list_volumes (GtkFileSystem *file_system)
{
- GtkFileSystemPrivate *priv;
+ GtkFileSystemPriv *priv = file_system->priv;
GSList *list;
DEBUG ("list_volumes");
- g_return_val_if_fail (GTK_IS_FILE_SYSTEM (file_system), NULL);
-
- priv = GTK_FILE_SYSTEM_GET_PRIVATE (file_system);
- get_volumes_list (GTK_FILE_SYSTEM (file_system));
+ get_volumes_list (file_system);
list = g_slist_copy (priv->volumes);
GSList *
_gtk_file_system_list_bookmarks (GtkFileSystem *file_system)
{
- GtkFileSystemPrivate *priv;
+ GtkFileSystemPriv *priv = file_system->priv;
GSList *bookmarks, *files = NULL;
DEBUG ("list_bookmarks");
- priv = GTK_FILE_SYSTEM_GET_PRIVATE (file_system);
bookmarks = priv->bookmarks;
while (bookmarks)
gint position,
GError **error)
{
- GtkFileSystemPrivate *priv;
+ GtkFileSystemPriv *priv = file_system->priv;
GSList *bookmarks;
GtkFileSystemBookmark *bookmark;
gboolean result = TRUE;
GFile *bookmarks_file;
- priv = GTK_FILE_SYSTEM_GET_PRIVATE (file_system);
bookmarks = priv->bookmarks;
while (bookmarks)
GFile *file,
GError **error)
{
- GtkFileSystemPrivate *priv;
+ GtkFileSystemPriv *priv = file_system->priv;
GtkFileSystemBookmark *bookmark;
GSList *bookmarks;
gboolean result = FALSE;
GFile *bookmarks_file;
- priv = GTK_FILE_SYSTEM_GET_PRIVATE (file_system);
-
if (!priv->bookmarks)
return FALSE;
_gtk_file_system_get_bookmark_label (GtkFileSystem *file_system,
GFile *file)
{
- GtkFileSystemPrivate *priv;
+ GtkFileSystemPriv *priv = file_system->priv;
GSList *bookmarks;
gchar *label = NULL;
DEBUG ("get_bookmark_label");
- priv = GTK_FILE_SYSTEM_GET_PRIVATE (file_system);
bookmarks = priv->bookmarks;
while (bookmarks)
GFile *file,
const gchar *label)
{
- GtkFileSystemPrivate *priv;
+ GtkFileSystemPriv *priv = file_system->priv;
gboolean changed = FALSE;
GFile *bookmarks_file;
GSList *bookmarks;
DEBUG ("set_bookmark_label");
- priv = GTK_FILE_SYSTEM_GET_PRIVATE (file_system);
bookmarks = priv->bookmarks;
while (bookmarks)
_gtk_file_system_get_volume_for_file (GtkFileSystem *file_system,
GFile *file)
{
- GtkFileSystemPrivate *priv;
GMount *mount;
DEBUG ("get_volume_for_file");
- priv = GTK_FILE_SYSTEM_GET_PRIVATE (file_system);
mount = g_file_find_enclosing_mount (file, NULL, NULL);
if (!mount && g_file_is_native (file))
const GValue *value,
GParamSpec *pspec)
{
- GtkFolderPrivate *priv;
-
- priv = GTK_FOLDER_GET_PRIVATE (object);
+ GtkFolder *folder = GTK_FOLDER (object);
+ GtkFolderPriv *priv = folder->priv;
switch (prop_id)
{
GValue *value,
GParamSpec *pspec)
{
- GtkFolderPrivate *priv;
-
- priv = GTK_FOLDER_GET_PRIVATE (object);
+ GtkFolder *folder = GTK_FOLDER (object);
+ GtkFolderPriv *priv = folder->priv;
switch (prop_id)
{
GFileMonitorEvent event,
gpointer data)
{
- GtkFolderPrivate *priv;
- GtkFolder *folder;
+ GtkFolder *folder = GTK_FOLDER (data);
+ GtkFolderPriv *priv = folder->priv;
GSList *files;
- folder = GTK_FOLDER (data);
- priv = GTK_FOLDER_GET_PRIVATE (folder);
files = g_slist_prepend (NULL, file);
gdk_threads_enter ();
GAsyncResult *result,
gpointer user_data)
{
+ GtkFolder *folder = GTK_FOLDER (user_data);
+ GtkFolderPriv *priv = folder->priv;
GFileEnumerator *enumerator;
- GtkFolderPrivate *priv;
- GtkFolder *folder;
GError *error = NULL;
GSList *files = NULL;
GList *file_infos, *f;
return;
}
- folder = GTK_FOLDER (user_data);
- priv = GTK_FOLDER_GET_PRIVATE (folder);
-
if (!file_infos)
{
g_file_enumerator_close_async (enumerator,
static void
gtk_folder_constructed (GObject *object)
{
- GtkFolderPrivate *priv;
+ GtkFolder *folder = GTK_FOLDER (object);
+ GtkFolderPriv *priv = folder->priv;
GError *error = NULL;
- priv = GTK_FOLDER_GET_PRIVATE (object);
priv->directory_monitor = g_file_monitor_directory (priv->folder_file, G_FILE_MONITOR_NONE, NULL, &error);
if (error)
static void
gtk_folder_finalize (GObject *object)
{
- GtkFolderPrivate *priv;
-
- priv = GTK_FOLDER_GET_PRIVATE (object);
+ GtkFolder *folder = GTK_FOLDER (object);
+ GtkFolderPriv *priv = folder->priv;
g_hash_table_unref (priv->children);
g_cclosure_marshal_VOID__VOID,
G_TYPE_NONE, 0);
- g_type_class_add_private (object_class, sizeof (GtkFolderPrivate));
+ g_type_class_add_private (object_class, sizeof (GtkFolderPriv));
}
static void
_gtk_folder_init (GtkFolder *folder)
{
- GtkFolderPrivate *priv;
-
- priv = GTK_FOLDER_GET_PRIVATE (folder);
+ GtkFolderPriv *priv = folder->priv;
priv->children = g_hash_table_new_full (g_file_hash,
(GEqualFunc) g_file_equal,
gtk_folder_set_finished_loading (GtkFolder *folder,
gboolean finished_loading)
{
- GtkFolderPrivate *priv;
+ GtkFolderPriv *priv = folder->priv;
- priv = GTK_FOLDER_GET_PRIVATE (folder);
priv->finished_loading = (finished_loading == TRUE);
gdk_threads_enter ();
GFile *file,
GFileInfo *info)
{
- GtkFolderPrivate *priv;
-
- priv = GTK_FOLDER_GET_PRIVATE (folder);
+ GtkFolderPriv *priv = folder->priv;
g_hash_table_insert (priv->children,
g_object_ref (file),
GSList *
_gtk_folder_list_children (GtkFolder *folder)
{
- GtkFolderPrivate *priv;
+ GtkFolderPriv *priv = folder->priv;
GList *files, *elem;
GSList *children = NULL;
- priv = GTK_FOLDER_GET_PRIVATE (folder);
files = g_hash_table_get_keys (priv->children);
children = NULL;
_gtk_folder_get_info (GtkFolder *folder,
GFile *file)
{
- GtkFolderPrivate *priv;
+ GtkFolderPriv *priv = folder->priv;
GFileInfo *info;
- priv = GTK_FOLDER_GET_PRIVATE (folder);
info = g_hash_table_lookup (priv->children, file);
if (!info)
gboolean
_gtk_folder_is_finished_loading (GtkFolder *folder)
{
- GtkFolderPrivate *priv;
-
- priv = GTK_FOLDER_GET_PRIVATE (folder);
-
- return priv->finished_loading;
+ return folder->priv->finished_loading;
}
/* GtkFileSystemVolume public methods */